#pragma once
#include<vector>
#include"MonsterGroup.h"
#include"GameMonster.h"
#include"../event/Object.h"

class TeamGroup
{
public:
	TeamGroup();
	TeamGroup(int teamId, int leaderId,int targetId);
	~TeamGroup();

	void setController(Object* controller);

	bool addMember(int userId);
	bool removeMember(int userId);
	const std::vector<int>& getMembers();

	int getLeaderId();
	int getTargetId();

	void setMonsterGroupId(const int& id, const int& sceneId);
	int getMonsterGroupId();

	std::list<GameMonster>* getMonsterList();
private:
	int m_teamId;
	int m_leaderId;
	int m_teamTargetId;
	Object* m_controller;
	MonsterGroup m_monsterGroup;
	std::vector<int> m_members;

	static int MAX_MEMBERS;
};
